import type { BaseFields } from "../typing";

/**合并上传分片参数 */
export interface MergeParams {
  /**文件名称 */
  filename: string;
  /**扩展名 */
  extname: string;
  /**原始文件名 */
  originFileName: string;
  /**类型 */
  type: "radio" | "multiple";
  /**文件头ID */
  fileHeaderId: string;
}

/**合并分片响应 */
export interface MergeResult {
  /**文件头ID */
  fileHeaderId: string;
  /**文件ID */
  fileId: string;
  /**原始文件名 */
  originFileName: string;
  /**访问路径 */
  url: string;
}

/**查询是否上传过分片参数 */
export interface QueryChunkParams {
  /**分片名称 */
  chunkName: string;
}

/**查询是否上传过分片响应 */
export interface QueryChunkResult {
  /**已上传分片索引 */
  uploadIndexList: number[];
}

/**查询文件头列表响应 */
export interface FileItem extends BaseFields {
  /**文件头ID */
  fileHeaderId: string;
  /**文件ID */
  fileId: string;
  /**原始文件名 */
  originFileName: string;
  /**访问路径 */
  url: string;

  // 运行时
  /**图片加载完成 */
  loaded?: boolean;
}
